package com.bestcem.xm.award.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * @author xa.zhang <xa.zhang@idiaoyan.com>
 * @version v1.0
 * @date 2021/8/6 14:16
 * @desc 前端要求需要返回python code,所以添加此类。在红包入口和领取红包使用
 */
@Getter
@AllArgsConstructor
public enum AwardErrorMsgEnum {

    /**
     * 操作失败
     */
    FAILED(7777, "操作失败", null),
    /**
     * 当前状态禁止编辑
     */
    STATUS_FORBIDDEN(7001, "当前状态禁止编辑", null),
    /**
     * 当前状态无法转移至新状态
     */
    STATUS_TRANSFER_FORBIDDEN(7002, "当前状态无法转移至新状态", null),
    /**
     * 正在被投放使用中
     */
    DELIVER_USED_FORBIDDEN(7003, "正在被投放使用中", null),
    /**
     * 奖励正在被创建，无法编辑
     */
    AWARD_POOL_EDIT_FORBIDDEN(7004, "使用该奖池的奖励正在被创建，无法编辑", null),
    /**
     * 正在被编辑，奖励无法创建
     */
    AWARD_POOL_CREATE_FORBIDDEN(7005, "该奖池正在被编辑，奖励无法创建", null),
    /**
     * 该奖池未满足数量要求，奖励无法创建
     */
    AWARD_POOL_NUM_FORBIDDEN(7006, "该奖池未满足数量要求，奖励无法创建", null),
    /**
     * 该奖池正在被使用，无法进行操
     */
    AWARD_CODE_LOCK_FORBIDDEN(7007, "该奖池正在被使用，无法进行操作", null),
    /**
     * 同一答卷的奖励名称重复
     */
    AWARD_NAME_DUPLICATE(7008, "同一答卷的奖励名称重复", null),
    /**
     * 奖励名称超过50字符
     */
    AWARD_NAME_TOO_LONG(7009, "奖励名称超过50字符", null),
    /**
     * 答卷已参与过奖励
     */
    SEQ_FORBIDDEN(7101, "答卷已参与过奖励", null),
    /**
     * 账户领取次数已达上限
     */
    ACCOUNT_FORBIDDEN(7102, "账户领取次数已达上限", null),
    /**
     * 答题时间未满足要求
     */
    TIME_FORBIDDEN(7103, "答题时间未满足要求", null),
    /**
     * IP领取次数已达上限
     */
    IP_FORBIDDEN(7104, "IP领取次数已达上限", null),
    /**
     * 答卷状态异常
     */
    SURVEY_STATUS_FORBIDDEN(7105, "答卷状态异常", null),
    /**
     * 抽奖次数已达上限
     */
    TOTAL_FORBIDDEN(7106, "抽奖次数已达上限", null),
    /**
     * 抽奖已完成
     */
    PAGE_FORBIDDEN(7107, "抽奖已完成", null),
    /**
     * 抽奖次数已达上限
     */
    DRAW_FORBIDDEN(7108, "抽奖次数已达上限", null),
    /**
     * 中奖次数已达上限
     */
    WIN_FORBIDDEN(7109, "中奖次数已达上限", null),
    /**
     * 手机号未认证
     */
    PHONE_FORBIDDEN(7110, "手机号未认证", null),
    /**
     * 设备领取次数已达上限
     */
    DEVICE_FORBIDDEN(7111, "设备领取次数已达上限", null),
    /**
     * 兑奖码不存在
     */
    VERIFY_CODE_NOT_EXIST(7112, "兑奖码不存在", null),
    /**
     * 兑奖码已被核销
     */
    VERIFY_CODE_STATUS_YES(7113, "兑奖码已被核销", null),
    /**
     * 禁止抽奖
     */
    DRAW_STATUS_FORBIDDEN(7114, "禁止抽奖", null),
    /**
     * 兑奖码已被标记为不处理
     */
    VERIFY_CODE_STATUS_NO(7115, "兑奖码已被标记为不处理", null),
    /**
     * 未查询到兑奖码
     */
    WIN_RECORD_NOT_EXISTS(7116, "未查询到兑奖码", null),
    /**
     * 文件解析失败
     */
    FILE_NOT_SUPPORT(7117, "文件解析失败", null),
    /**
     * 活动未激活
     */
    AWARD_INACTIVE(7118, "活动未激活", null),
    /**
     * 活动已暂停或结束
     */
    AWARD_STOPPED(7119, "活动已暂停或结束", null),
    /**
     * 中台接口不可用
     */
    AWARD_UNAVAILABLE(7121, "中台接口不可用", null),
    /**
     * 红包已领完
     */
    AWARD_EMPTY(7122, "红包已领完", null),
    /**
     * 今日红包已领完
     */
    AWARD_DAY_LIMIT(7123, "今日红包已领完", null),
    /**
     * 获取OPENID失败
     */
    AWARD_NO_OPENID(7124, "获取OPENID失败", null),
    /**
     * 该微信号已达领取上限
     */
    AWARD_ACCOUNT_LIMIT(7125, "该微信号已达领取上限", null),
    /**
     * 未抽中红包
     */
    BONUS_UNLUCKY(7126, "未抽中红包", null),
    /**
     * 红包平均金额必须大于等于0.3元
     */
    AVERAGE_BONUS_TOO_SHORT(7127, "红包平均金额必须大于等于0.3元", null),
    /**
     * 答卷评分低
     */
    SURVEY_SCORE_TOO_LOW(7128, "答卷评分低", null),
    /**
     * 钱包处理异常
     */
    WALLET_HANDLE_ERROR(7129, "钱包处理异常", null),

    /**
     * 通用异常
     */
    CUSTOM_ERROR(7200, null, null);


    private int code;
    private String msg;
    /**
     * 返给python的组合消息
     */
    private String responseMsg;

    public String getResponseMsg() {
        return "" + code + "-" + msg;
    }

    public String getResponseMsg(String message) {
        return "" + code + "-" + message;
    }

}
